package com.bw.db.room.entity

import androidx.room.TypeConverter
import com.blankj.utilcode.util.GsonUtils

/**
 * 自定义类型转换器
 * 支持类型：NULL,INTEGER,TEXT,BLOB,REAL
 */
class CustomTypeConverters {

    /**
     * 数据中存储一个List集合，就需要类型转换
     */

    @TypeConverter
    fun arrayListToString(list: ArrayList<String>): String {
        return GsonUtils.toJson(list)
    }

    /**
     * 将Json字符串转成集合
     */
    @TypeConverter
    fun stringToArrayList(json: String): ArrayList<String> {
        return GsonUtils.fromJson(json,ArrayList::class.java) as ArrayList<String>
    }

    /**
     * 将Long类型转成String
     */
    @TypeConverter
    fun longToString(long: Long): String {
        return long.toString()
    }

    /**
     * 将String转成Long类型
     */
    @TypeConverter
    fun stringToLong(string: String): Long {
        return string.toLong()
    }



}